﻿using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Web;
using Lavka.Models;

namespace Lavka.Core
{
    public static class PagesHelper
    {
        public static string GenerateTitleTag(string path, LavkaDbEntities context)
        {
            if (path.Contains("/Products/Details/"))
            {
                string[] parts = path.Split(new[] { "/Products/Details/" }, StringSplitOptions.RemoveEmptyEntries);
                int id = Convert.ToInt32(parts[0]);
                Products product = context.Products.Where(p => p.ProductId == id).First();
                if (!string.IsNullOrEmpty(product.Description)) return "Посудна лавка | " + product.Name;
            }
            return "Интернет-магазин posudnalavka.com.ua | Кухонная посуда, Кухонная посуда, купить Кухонная посуда, продажа Кухонная посуда, выбор Кухонная посуда, сравнить Кухонная посуда. Кухонная посуда, лучшие цены, доставка, гарантия!";
        }
        public static string GenerateDescriptionTag(string path, LavkaDbEntities context)
        {
            if (path.Contains("/Products/Details/"))
            {
                string[] parts = path.Split(new[] { "/Products/Details/" }, StringSplitOptions.RemoveEmptyEntries);
                int id = Convert.ToInt32(parts[0]);
                Products product = context.Products.Where(p => p.ProductId == id).First();
                if (!string.IsNullOrEmpty(product.Description)) return product.Description;
            }
            return "Кухонная посуда в интернет-магазине posudnalavka.com.ua Тел: 599-56-74  Пн – Пт с 8.00 – 19.00. Кухонная посуда, лучшие цены, доставка, гарантия!";
        }
        public static string GenerateKeywardsTag(string path, LavkaDbEntities context)
        {
            if (path.Contains("/Products/Details/"))
            {
                string[] parts = path.Split(new[] { "/Products/Details/" }, StringSplitOptions.RemoveEmptyEntries);
                int id = Convert.ToInt32(parts[0]);
                Products product = context.Products.Where(p => p.ProductId == id).First();
                if (!string.IsNullOrEmpty(product.Description)) return product.Description + " Кухонная посуда, Кухонная посуда, купить Кухонная посуда, продажа Кухонная посуда, выбор Кухонная посуда, сравнить Кухонная посуда"; 
            }
            return "Кухонная посуда, Кухонная посуда, купить Кухонная посуда, продажа Кухонная посуда, выбор Кухонная посуда, сравнить Кухонная посуда";
        }

        public static string GetPageTitle(string path, LavkaDbEntities context)
        {
            var page = context.Pages.Where(p => p.Path == path).FirstOrDefault();
            if(page != null)
            {
                return page.Title;
            }
            return GenerateTitleTag(path, context);
        }
        public static string GetPageKeywords(string path, LavkaDbEntities context)
        {
            var page = context.Pages.Where(p => p.Path == path).FirstOrDefault();
            if (page != null)
            {
                return page.Keywords;
            }
            return GenerateKeywardsTag(path, context);
        }
        public static string GetPageDescription(string path, LavkaDbEntities context)
        {
            var page = context.Pages.Where(p => p.Path == path).FirstOrDefault();
            if (page != null)
            {
                return page.Description;
            }
            return GenerateDescriptionTag(path, context);
        }
    }
}